#include<bits/stdc++.h>
#include "graph.h"
using namespace std;
const int N=205;
int n,dis[N][N],ans[N];
void dfs(int p){
	int du=NumberOfRoads();
	for(int i=1;i<=du;++i){
		Move(i,p);
		int e=LastRoad();
		if(Color()==1){
			++n;
			for(int j=2;j<n;++j) dis[n][j]=dis[j][n]=1e8;
			dis[n][n]=0;
			dfs(n);
		}
		dis[Color()][p]=dis[p][Color()]=1;
		Move(e,Color());
	}
}
void Inspect(int R){
	n=2,dfs(2);
	for(int k=2;k<=n;++k)
	for(int i=2;i<=n;++i)
	for(int j=2;j<=n;++j)
		dis[i][j]=min(dis[i][j],dis[i][k]+dis[k][j]);
	for(int i=2;i<=n;++i)
	for(int j=i+1;j<=n;++j) ++ans[dis[i][j]];
	for(int i=1;i<=R;++i) Answer(i,ans[i]);
}
